// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-9-15 18:54:25


// Source File Name:   s6.java

package com.zelix;

import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Vector;


//            r6, td, sn, kt, 
//            qu, lx, sx, wu, 
//            t6, lm

public class s6 extends r6
{

    int p;
    private static String z[];

    private s6(t6 t6)
    {
        super(t6);
        p = -1;
    }

    public s6(t6 t6, td td1, sn sn1, lm lm, Vector vector, sx sx1, wu wu1, 
            wu wu2)
    {
        qu aqu[];
        qu aqu2[];
        qu aqu3[];
        int l;
        boolean flag1;
        int j1;
        int l1;
        int i;
        int j;
label0:
        {
            l1 = kt.i;
            super(t6);
            p = -1;
            i = td1.q();
            int k = sx1.b();
            if(k == -1)
            {
                j = i;
                if(l1 == 0)
                    break label0;
            }
            j = i - k - 1;
        }
        sx1.a(i);
        super.j = td1;
        aqu = (qu[])wu1.a();
        qu aqu1[] = (qu[])wu2.a();
        aqu2 = qu.a(this, sn1.f(), lm, vector, true);
        aqu3 = qu.a(this, sn1.c(), lm, vector, false);
        boolean flag = a(aqu, aqu2);
        p = -1;
        if(flag && aqu3.length == 0)
        {
            super.m = 0;
            if(j >= 0 && j <= 63)
            {
                p = j;
                if(l1 == 0)
                    break MISSING_BLOCK_LABEL_463;
            }
            p = 251;
            if(l1 == 0)
                break MISSING_BLOCK_LABEL_463;
        }
        if(flag && aqu3.length == 1)
        {
            super.m = 1;
            super.n = aqu3;
            if(j >= 0 && j <= 63)
            {
                p = j + 64;
                if(l1 == 0)
                    break MISSING_BLOCK_LABEL_463;
            }
            p = 247;
            if(l1 == 0)
                break MISSING_BLOCK_LABEL_463;
        }
        if(aqu3.length != 0)
            break MISSING_BLOCK_LABEL_463;
        super.m = 0;
        l = aqu.length - aqu2.length;
        if(l < 1 || l > 3)
            break MISSING_BLOCK_LABEL_334;
        flag1 = true;
        j1 = 0;
        if(l1 == 0) goto _L2; else goto _L1
_L1:
        if(aqu[j1].a(aqu2[j1]))
            continue; /* Loop/switch isn't completed */
        flag1 = false;
        if(l1 == 0)
            break; /* Loop/switch isn't completed */
        j1++;
_L2:
        if(j1 < aqu2.length) goto _L1; else goto _L3
_L3:
        if(flag1)
            p = 251 - l;
        int i1;
        boolean flag2;
        int k1;
        if(p != -1)
            break MISSING_BLOCK_LABEL_463;
        i1 = aqu2.length - aqu.length;
        if(i1 < 1 || i1 > 3)
            break MISSING_BLOCK_LABEL_463;
        flag2 = true;
        k1 = 0;
        if(l1 == 0) goto _L5; else goto _L4
_L4:
        if(aqu[k1].a(aqu2[k1]))
            continue; /* Loop/switch isn't completed */
        flag2 = false;
        if(l1 == 0)
            break; /* Loop/switch isn't completed */
        k1++;
_L5:
        if(k1 < aqu.length) goto _L4; else goto _L6
_L6:
        if(flag2)
        {
            p = 251 + i1;
            super.k = i1;
            super.l = new qu[super.k];
            System.arraycopy(aqu2, aqu2.length - super.k, super.l, 0, super.k);
        }
        if(p == -1)
        {
            p = 255;
            super.k = aqu2.length;
            super.l = aqu2;
            super.m = aqu3.length;
            super.n = aqu3;
        }
        wu1.a(aqu2);
        wu2.a(aqu3);
        super.o = true;
        return;
    }

    private boolean a(qu aqu[], qu aqu1[])
    {
        int i;
        int j;
        j = kt.i;
        if(aqu.length != aqu1.length)
            break MISSING_BLOCK_LABEL_44;
        i = 0;
        if(j == 0) goto _L2; else goto _L1
_L1:
        if(!aqu[i].a(aqu1[i]))
            return false;
        i++;
_L2:
        if(i < aqu.length) goto _L1; else goto _L3
_L3:
        return true;
        return false;
    }

    int a()
    {
        int i;
        int l;
        l = kt.i;
        i = 1;
        if(p != 255) goto _L2; else goto _L1
_L1:
        int j;
        i += 2;
        i += 2;
        j = 0;
        if(l == 0) goto _L4; else goto _L3
_L3:
        i += super.l[j].q();
        j++;
_L4:
        if(j < super.k) goto _L3; else goto _L5
_L5:
        int k;
        i += 2;
        k = 0;
        if(l == 0) goto _L7; else goto _L6
_L6:
        i += super.n[k].q();
        k++;
_L7:
        if(k < super.m) goto _L6; else goto _L8
_L8:
        if(l == 0) goto _L9; else goto _L2
_L2:
        if(p != 251) goto _L11; else goto _L10
_L10:
        i += 2;
        if(l == 0) goto _L9; else goto _L11
_L11:
        if(p >= 0 && p <= 63) goto _L9; else goto _L12
_L12:
        if(p < 64 || p > 127) goto _L14; else goto _L13
_L13:
        i += super.n[0].q();
        if(l == 0) goto _L9; else goto _L14
_L14:
        if(p != 247) goto _L16; else goto _L15
_L15:
        i = (i += 2) + super.n[0].q();
        if(l == 0) goto _L9; else goto _L16
_L16:
        if(p < 248 || p > 250) goto _L18; else goto _L17
_L17:
        i += 2;
        if(l == 0) goto _L9; else goto _L18
_L18:
        if(p < 252 || p > 254) goto _L9; else goto _L19
_L19:
        i += 2;
        j = p - 251;
        k = 0;
        if(l == 0) goto _L21; else goto _L20
_L20:
        i += super.l[k].q();
        k++;
_L21:
        if(k < j) goto _L20; else goto _L9
_L9:
        return i;
    }

    public static s6 a(t6 t6)
    {
        return new s6(t6);
    }

    public String a()
    {
        return z[0];
    }

    protected void a(DataOutputStream dataoutputstream, sx sx1)
        throws IOException
    {
        int j;
        int l;
        int j1;
        int i;
label0:
        {
            j1 = kt.i;
            lx.b(super.o, z[1] + l());
            i = super.j.q();
            int k = sx1.b();
            if(k == -1)
            {
                j = i;
                if(j1 == 0)
                    break label0;
            }
            j = i - k - 1;
        }
        sx1.a(i);
        if(p != 255)
            break MISSING_BLOCK_LABEL_182;
        dataoutputstream.writeByte(p);
        dataoutputstream.writeShort(j);
        dataoutputstream.writeShort(super.k);
        l = 0;
        if(j1 == 0) goto _L2; else goto _L1
_L1:
        super.l[l].a(dataoutputstream);
        l++;
_L2:
        if(l < super.k) goto _L1; else goto _L3
_L3:
        int i1;
        dataoutputstream.writeShort(super.m);
        i1 = 0;
        if(j1 == 0) goto _L5; else goto _L4
_L4:
        super.n[i1].a(dataoutputstream);
        i1++;
_L5:
        if(i1 < super.m) goto _L4; else goto _L6
_L6:
        if(j1 == 0)
            break MISSING_BLOCK_LABEL_443;
        if(p == 251)
        {
            dataoutputstream.writeByte(p);
            dataoutputstream.writeShort(j);
            if(j1 == 0)
                break MISSING_BLOCK_LABEL_443;
        }
        if(p >= 0 && p <= 63)
        {
            p = j;
            dataoutputstream.writeByte(p);
            if(j1 == 0)
                break MISSING_BLOCK_LABEL_443;
        }
        if(p >= 64 && p <= 127)
        {
            l = j + 64;
            dataoutputstream.writeByte(l);
            super.n[0].a(dataoutputstream);
            if(j1 == 0)
                break MISSING_BLOCK_LABEL_443;
        }
        if(p == 247)
        {
            dataoutputstream.writeByte(p);
            dataoutputstream.writeShort(j);
            super.n[0].a(dataoutputstream);
            if(j1 == 0)
                break MISSING_BLOCK_LABEL_443;
        }
        if(p >= 248 && p <= 250)
        {
            dataoutputstream.writeByte(p);
            dataoutputstream.writeShort(j);
            if(j1 == 0)
                break MISSING_BLOCK_LABEL_443;
        }
        if(p < 252 || p > 254)
            break MISSING_BLOCK_LABEL_440;
        dataoutputstream.writeByte(p);
        dataoutputstream.writeShort(j);
        l = 0;
        if(j1 == 0) goto _L8; else goto _L7
_L7:
        super.l[l].a(dataoutputstream);
        l++;
_L8:
        if(l < super.k) goto _L7; else goto _L9
_L9:
        if(j1 == 0)
            break MISSING_BLOCK_LABEL_443;
        j = -1;
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key = 0x20;
                    break;
                case 1:
                    key = 43;
                    break;
                case 2:
                    key = 54;
                    break;
                case 3:
                    key = 92;
                    break;
                default:
                    key = 62;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }

    static 
    {
        String as[];
        as = new String[2];
        as[0] = z("s_W?UmJF\b_BGS".toCharArray());
        as[1] = z("iE@=RIO\026\017JAH]\021_P\013s2JRR\0265P\0".toCharArray());
        z = as;
    }
}